import Vue from 'vue'
import App from './App.vue'
// 三级联动组件---注册为全局组件
import TypeNav from '@/components/TypeNav'
import Carousel from '@/components/Carousel'
import Pagination from '@/components/Pagination'
import * as API from '@/api'
// console.log(API)
// ElementUI
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

// 第一个参数：全局组件的名字(页面中定义了name 值 TypeNav）；第二个参数：哪一个组件
Vue.component(TypeNav.name, TypeNav)
Vue.component(Carousel.name, Carousel)
Vue.component(Pagination.name,Pagination);

// Vue.config.productionTip = false
// 引入路由
import router from '@/router'
// 引入 Vuex 仓库
import store from '@/store'
// 引入 mockServer.js --- mock 数据
import '@/mock/mockServe'
// 引入 swiper 样式
import "swiper/css/swiper.min.css"
import VueLazyload from 'vue-lazyload'

Vue.use(VueLazyload)

// 搜索模块
// import {reqGetSearchInfo} from '@/api'
// console.log(reqGetSearchInfo({}))

//引入表单校验插件
import "@/plugins/validate";

new Vue({
    render: h => h(App),
    //全局事件总线$bus配置
    beforeCreate() {
        Vue.prototype.$bus = this;
        Vue.prototype.$API = API;
    },

    // 注册路径
    router,
    // 注册仓库:组件实例身上会多一个属性 $store 属性
    store
}).$mount('#app')
